﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Timers;
using Classes.Model.Entidade;

namespace Classes.Model.Entidade
{
    [Serializable]
    public class EventoDTO
    {
        public int id { get; set; }

        private String nome;

        public String Nome
        {
            get { return nome; }
            set { nome = value; }
        }

        private String descricao;

        public String Descricao
        {
            get { return descricao; }
            set { descricao = value; }
        }

        private String local;

        public String Local
        {
            get { return local; }
            set { local = value; }
        }

        private DateTime horario;

        public DateTime Horario
        {
            get { return horario; }
            set { horario = value; }
        }

        private String programacao;

        public String Programacao
        {
            get { return programacao; }
            set { programacao = value; }
        }

        private String responsavel;

        public String Responsavel
        {
            get { return responsavel; }
            set { responsavel = value; }
        }

        private String telefone;

        public String Telefone
        {
            get { return telefone; }
            set { telefone = value; }
        }

        private String email;

        public String Email
        {
            get { return email; }
            set { email = value; }
        }

        private String site;

        public String Site
        {
            get { return site; }
            set { site = value; }
        }

        private String logomarca;

        public String Logomarca
        {
            get { return logomarca; }
            set { logomarca = value; }
        }
        private String valor;

        public String Valor
        {
            get { return valor; }
            set { valor = value; }
        }

        private ClassificacaoDTO classificacao;

        public ClassificacaoDTO Classificacao
        {
            get { return classificacao; }
            set { classificacao = value; }
        }

        private CategoriaDTO categoria;

        public CategoriaDTO Categoria
        {
            get { return categoria; }
            set { categoria = value; }
        }

        private GeneroDTO genero;

        public GeneroDTO Genero
        {
            get { return genero; }
            set { genero = value; }
        }

        private StatusDTO status;

        public StatusDTO Status
        {
            get { return status; }
            set { status = value; }
        }

        private CidadeDTO cidade;

        public CidadeDTO Cidade
        {
            get { return cidade; }
            set { cidade = value; }
        }

        private Int16 pontuacao_pre;

        public Int16 Pontuacao_pre
        {
            get { return pontuacao_pre; }
            set { pontuacao_pre = value; }
        }

        private Int16 pontuacao_pos;

        public Int16 Pontuacao_pos
        {
            get { return pontuacao_pos; }
            set { pontuacao_pos = value; }
        }

        private DateTime data_inicial;

        public DateTime Data_inicial
        {
            get { return data_inicial; }
            set { data_inicial = value; }
        }

        private DateTime data_final;

        public DateTime Data_final
        {
            get { return data_final; }
            set { data_final = value; }
        }

        public EventoDTO()
        {
        }

        public EventoDTO(
            String nome, String descricao, 
            String local, DateTime horario, String programacao, 
            String responsavel, String telefone, String email, 
            String site, String logomarca, String valor, ClassificacaoDTO 
            classificacao, CategoriaDTO categoria, GeneroDTO genero, StatusDTO status, 
            CidadeDTO cidade, Int16 pontuacao_pre, Int16 pontuacao_pos, DateTime data_inicial, 
            DateTime data_final
            )
        {
            this.Nome = nome;
            this.Descricao = descricao;
            this.Local = local;
            this.Horario = horario;
            this.Programacao = programacao;
            this.Responsavel = responsavel;
            this.Telefone = telefone;
            this.email = email;
            this.Site = site;
            this.Logomarca = logomarca;
            this.Valor = valor;
            this.Classificacao = classificacao;
            this.Categoria = categoria;
            this.Genero = genero;
            this.Status = status;
            this.Cidade = cidade;
            this.Pontuacao_pre = pontuacao_pre;
            this.Pontuacao_pos = pontuacao_pos;
            this.Data_inicial = data_inicial;
            this.Data_final = data_final;
        }
    }
}
